如何在Python中使用Numpy随机函数

您所在的位置:网站首页 python中random seed 如何在Python中使用Numpy随机函数

如何在Python中使用Numpy随机函数

#如何在Python中使用Numpy随机函数| 来源: 网络整理| 查看: 265

如何使用numpy.random.rand()函数?

numpy.random.rand()函数用于从[0,1) 上的均匀分布中生成随机的浮点数。这些值可以作为一个单一的值提取,也可以在任何维度的数组中提取。

在这篇文章中,你将了解到这个函数的各种使用情况。

numpy.random.rand()的结构概述 语法: numpy.random.rand(d0, d1, ..., dn) 目的: 创建一个给定形状的数组,并用[0, 1]上的均匀分布的随机样本来填充它。 参数:-d0, d1, ..., dn : int, 可选返回数组的尺寸,必须为非负数。如果没有给出参数,则返回一个Python浮点。 Returnsoutndarray, shape (d0, d1, ..., dn)随机值。 # Import numpy library import numpy as np 复制代码 numpy.random.rand()函数的实现

numpy.random.rand()函数用于生成范围为[0,1) 的随机值。数据点形成一个均匀分布。

让我们用一个例子来理解它

第1步:创建一个numpyrandom.rand() 函数对象

randNum = np.random.rand() 复制代码

第2步:调用random.rand() 函数对象

randNum 复制代码 0.35071131536970257 复制代码

在调用random.rand() 函数时,会返回一个随机的浮点数。这个值将总是在[0,1) 的范围内。而且,这个值在每次调用对象时都会改变。也就是说,每次调用randNum ,都会产生新的随机值。

如果你希望每次都得到相同的值,怎么办?

使用Seed来使数值静态化

np.random.rand() 所返回的值在每次连续调用时都会改变。通过使用np.random.seed() each time when the function is called the same value gets generated.

让我们通过一个例子来看看。

步骤1:设置种子并创建一个numpyrandom.rand() 函数对象

np.random.seed(404) randNum = np.random.rand() 复制代码

第2步:调用random.rand() 函数对象

randNum 复制代码 0.6688250856311798 复制代码

现在,每次调用random.rand() 函数时,结果值都会保持不变。

到现在为止,我们只生成了一个单一的随机值。但是,如果你希望生成一个随机值数组呢?

使用rand函数创建numpy随机数组

np.random.rand() 函数在默认情况下返回一个单一的随机浮点数。但是这个函数也支持尺寸/形状作为输入,这意味着如果将数组的形状传递给np.random.rand() 函数,将返回一个包含随机值的数组。

让我们在一些例子的帮助下看看这个。

通过numpy随机函数的一维数组

要使用np.random.rand() 函数创建一维随机数组,将数组的形状传入rand()函数。在这种情况下,数组的形状与数组的大小相同。

步骤1:创建一个带有shape的numpyrandom.rand() 函数对象10

a_1D_array = np.random.rand(10) 复制代码

第2步:调用random.rand() 函数对象

a_1D_array 复制代码 array([0.34671278, 0.35893712, 0.72728524, 0.6622387 , 0.60089987, 0.72429985, 0.69959325, 0.01746982, 0.69838873, 0.2936516 ]) 复制代码

在调用a_1D_array 对象时,会返回一个包含10个随机浮点值的数组。返回的数组是一个numpy数据类型的数组。

通过numpy随机函数创建二维数组

要使用np.random.rand() 函数创建二维随机数组,在rand()函数中传递数组的形状。形状可以传递为(no_of_rows, no_of_columns)。

步骤1:创建一个带有shape的numpyrandom.rand() 函数对象(5,2)

a_2D_array = np.random.rand(5,2) 复制代码

第2步:调用random.rand() 函数对象

a_2D_array 复制代码 array([[0.98466378, 0.8672886 ], [0.74133785, 0.35450866], [0.2958581 , 0.02537018], [0.1601208 , 0.81913225], [0.1515311 , 0.72590137]]) 复制代码

在调用a_2D_array对象时,会返回一个包含10个维度为(5,2)的随机值的数组。

通过numpy随机函数创建三维数组

要使用np.random.rand() 函数创建三维随机数组,在rand()函数中传递数组的形状。形状应该是(x-值,y-值,z-值)。

第1步:创建一个 带有shape的numpy random.rand() 函数对象 (5,2,2)

a_3D_array = np.random.rand(5,2,2) 复制代码

第2步:调用random.rand() 函数对象

a_3D_array 复制代码 array([[[0.00982155, 0.70143236], [0.22931261, 0.98901718]], [[0.58154452, 0.75553604], [0.03819143, 0.24365719]], [[0.12186642, 0.52535204], [0.97041149, 0.0633353 ]], [[0.35950761, 0.2922847 ], [0.9058014 , 0.95828723]], [[0.33627233, 0.46659056], [0.72309022, 0.73980002]]]) 复制代码

在调用a_3D_array对象时,会返回一个包含20个维度为(5,2,2)的随机值的数组。

实用提示 np.random.rand() 函数在你想创建一些假数据的情况下很有用。 你可以使用seed()来保持你的数值不变,每次运行代码单元都是如此。 测试你的知识

Q1: np.random.rand() 函数可以返回这些值:[1, 2, -2, -0.43] 。是真的还是假的?

答: 错。rand()函数返回范围为[0,1) 。

Q2: 如何设置随机数的状态?

答: 可以用np.random.seed() 函数来设置随机数的状态。

Q3: 写一段代码来生成一个10x10x3 范围内的随机数矩阵[0,1) 。

答: np.random.rand(10, 10, 3)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3